package com.caocaog.market.data.transfer.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.caocaog.market.data.transfer.entity.CcAgent;
import com.caocaog.market.data.transfer.entity.MkSiteArea;
import com.caocaog.market.data.transfer.entity.MkSiteBasic;
import com.caocaog.market.data.transfer.entity.SiteAreaSimple;

import java.util.List;

/**
 * @author liguang
 * @version 1.0.0
 * @Project jeecg-boot
 * @Package com.caocaog.market.data.transfer.service
 * @ClassName MkSiteBasicService.java
 * @createTime 2021年11月16日 10:07:00
 * @Description TODO
 */
public interface MkSiteBasicService extends IService<MkSiteBasic> {


    /**
     * 查询mysql库中所有分站（代理商）信息
     *   分页查询
     * @return
     **/
    public IPage<MkSiteBasic> findAllSiteByNow(Page<MkSiteBasic> page,MkSiteBasic mkSiteBasic);

    /**
     * 查询mysql库中所有分站（代理商）信息
     *   不分页查询
     * @return
     **/
    public List<MkSiteBasic> findAllSiteForNoPage(MkSiteBasic mkSiteBasic);

    /**
     * 查询mysql库中所有分站（代理商）信息记录数
     * 该方法查询到的记录数应该和findAllSiteByNow查询到的记录数是一样的
     * @return
     **/
    public int countForfindAllSiteByNow(MkSiteBasic mkSiteBasic);

    /**
     * 插入数据
     */
    public String insertForReplace(List<CcAgent> agents);

    /**
     * 设置分站的支付宝提现账号、总部抽成比例、待结算时间
     */
    public int siteSet(MkSiteBasic mkSiteBasic);

    /**
     * 根据经纬度和高德获取周边最近的分站，没有则返回null
     *
     * @param lat 纬度
     * @param lng 经度
     * @return 分站区域 / null
     */
    MkSiteArea getSurroundingSiteIdByMap(String lat, String lng);

    /**
     * 根据经纬度获取周边最近的分站
     *
     * @param lat 纬度
     * @param lng 经度
     * @return 分站区域
     */
    SiteAreaSimple getSurroundingSiteId(String lat, String lng);
}
